git-annex.git
13 months agouse openTempFile from file-io
Joey Hess [Tue, 21 Jan 2025 21:00:37 +0000 (17:00 -0400)]
use openTempFile from file-io

And follow-on changes.

Note that relatedTemplate was changed to operate on a RawFilePath, and
so when it counts the length, it is now the number of bytes, not the
number of code points. This will just make it truncate shorter strings
in some cases, the truncation is still unicode aware.

When not building with the OsPath flag, toOsPath . fromRawFilePath and
fromRawFilePath . fromOsPath do extra conversions back and forth between
String and ByteString. That overhead could be avoided, but that's the
non-optimised build mode, so didn't bother.

Sponsored-by: unqueued
13 months agoadd file-io to build-depends when building with OsPath flag
Joey Hess [Tue, 21 Jan 2025 18:26:04 +0000 (14:26 -0400)]
add file-io to build-depends when building with OsPath flag

Partly converted code to use functions from it, though more remain
unconverted. Most of withFile and openFile now use it.

13 months agoavoid build warning with recent ghc
Joey Hess [Tue, 21 Jan 2025 15:59:38 +0000 (11:59 -0400)]
avoid build warning with recent ghc

foldl' is in Prelude now. Explicitly import Data.List still
for older systems and add explict Prelude import to avoid warning.

13 months agorename OsString to OsPath
Joey Hess [Tue, 21 Jan 2025 15:57:44 +0000 (11:57 -0400)]
rename OsString to OsPath

13 months agoclean up stack.yaml with new versions of dependencies
Joey Hess [Mon, 20 Jan 2025 23:53:15 +0000 (19:53 -0400)]
clean up stack.yaml with new versions of dependencies

13 months agoRawFilePath conversion for Utility.Directory.Stream
Joey Hess [Mon, 20 Jan 2025 18:50:08 +0000 (14:50 -0400)]
RawFilePath conversion for Utility.Directory.Stream

13 months agoRawFilePath conversion of System.Directory
Joey Hess [Mon, 20 Jan 2025 22:03:26 +0000 (18:03 -0400)]
RawFilePath conversion of System.Directory

By using System.Directory.OsPath, which takes and returns OsString,
which is a ShortByteString. So, things like dirContents currently have the
overhead of copying that to a ByteString, but that should be less than
the overhead of using Strings which often in turn were converted to
RawFilePaths.

Added Utility.OsString and the OsString build flag. That flag is turned
on in the stack.yaml, and will be turned on automatically by cabal when
built with new enough libraries. The stack.yaml change is a bit ugly,
and that could be reverted for now if it causes any problems.

Note that Utility.OsString.toOsString on windows is avoiding only a
check of encoding that is documented as being unlikely to fail. I don't
think it can fail in git-annex; if it could, git-annex didn't contain
such an encoding check before, so at worst that should be a wash.

13 months agostop exporting Utility.SystemDirectory from Utility.Directory
Joey Hess [Mon, 20 Jan 2025 23:10:13 +0000 (19:10 -0400)]
stop exporting Utility.SystemDirectory from Utility.Directory

13 months agoupdate
Joey Hess [Mon, 20 Jan 2025 18:18:02 +0000 (14:18 -0400)]
update

13 months agoupdate
Joey Hess [Mon, 20 Jan 2025 17:58:14 +0000 (13:58 -0400)]
update

13 months agorelax annex-tracking-branch to allow "/"
Joey Hess [Mon, 20 Jan 2025 15:31:18 +0000 (11:31 -0400)]
relax annex-tracking-branch to allow "/"

Allow setting remote.foo.annex-tracking-branch to a branch name that
contains "/", as long as it's not a remote tracking branch.

13 months agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Mon, 20 Jan 2025 15:12:56 +0000 (11:12 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

13 months agoSupport help.autocorrect settings "never" and "immediate"
Joey Hess [Mon, 20 Jan 2025 15:01:07 +0000 (11:01 -0400)]
Support help.autocorrect settings "never" and "immediate"

13 months agoSupport help.autocorrect=prompt
Joey Hess [Mon, 20 Jan 2025 14:56:12 +0000 (10:56 -0400)]
Support help.autocorrect=prompt

13 months agoReport bug that one can't export synced/ branches
nobodyinperson [Mon, 20 Jan 2025 10:25:51 +0000 (10:25 +0000)]
Report bug that one can't export synced/ branches

13 months agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Fri, 17 Jan 2025 15:11:55 +0000 (11:11 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

13 months agoAdded a comment: Feature idea
hello@da0030bba070302e85904b4d73db61fb4af7bced [Fri, 17 Jan 2025 11:14:55 +0000 (11:14 +0000)]
Added a comment: Feature idea

13 months ago(no commit message)
hello@da0030bba070302e85904b4d73db61fb4af7bced [Fri, 17 Jan 2025 11:11:51 +0000 (11:11 +0000)]

13 months ago(no commit message)
goglu6 [Fri, 17 Jan 2025 06:30:22 +0000 (06:30 +0000)]

13 months ago(no commit message)
goglu6 [Fri, 17 Jan 2025 06:29:39 +0000 (06:29 +0000)]

13 months ago(no commit message)
goglu6 [Fri, 17 Jan 2025 06:24:07 +0000 (06:24 +0000)]

13 months ago(no commit message)
goglu6 [Fri, 17 Jan 2025 06:23:41 +0000 (06:23 +0000)]

13 months ago(no commit message)
goglu6 [Fri, 17 Jan 2025 05:13:55 +0000 (05:13 +0000)]

13 months ago(no commit message)
goglu6 [Fri, 17 Jan 2025 05:12:14 +0000 (05:12 +0000)]

13 months agoAdded a comment: Still happening, managed to get a reproduction (maybe ?)
hello@da0030bba070302e85904b4d73db61fb4af7bced [Thu, 16 Jan 2025 18:17:52 +0000 (18:17 +0000)]
Added a comment: Still happening, managed to get a reproduction (maybe ?)

13 months agocomment
Joey Hess [Wed, 15 Jan 2025 23:13:15 +0000 (19:13 -0400)]
comment

13 months agoadd news item for git-annex 10.20250115
Joey Hess [Wed, 15 Jan 2025 16:38:35 +0000 (12:38 -0400)]
add news item for git-annex 10.20250115

13 months agoreleasing package git-annex version 10.20250115
Joey Hess [Wed, 15 Jan 2025 16:38:25 +0000 (12:38 -0400)]
releasing package git-annex version 10.20250115

13 months agoarm autobuild moved to sparrow
Joey Hess [Wed, 15 Jan 2025 16:18:11 +0000 (12:18 -0400)]
arm autobuild moved to sparrow

13 months agopreparing release
Joey Hess [Wed, 15 Jan 2025 15:39:40 +0000 (11:39 -0400)]
preparing release

13 months agorsync security fix for bundled builds
Joey Hess [Wed, 15 Jan 2025 15:16:46 +0000 (11:16 -0400)]
rsync security fix for bundled builds

I have updated all linux builds.

14 months agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Mon, 13 Jan 2025 18:24:28 +0000 (14:24 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

14 months agopre-init config and hook
Joey Hess [Mon, 13 Jan 2025 18:22:49 +0000 (14:22 -0400)]
pre-init config and hook

Added annex.pre-init-command git config and pre-init-annex hook that is run
before git-annex repository initialization.

This can block initialization. Or it can preform pre-initialization
configuration or tweaking.

I left stdio connected while it's running, so it could also be used for
interactive prompting conceivably, although that would want to use /dev/tty
anyway probably in order to not pollute the stdout of a command when
automatic initialization is done.

Sponsored-by: Dartmouth College's OpenNeuro project
14 months agoAdded a comment
lemondata [Mon, 13 Jan 2025 17:43:25 +0000 (17:43 +0000)]
Added a comment

14 months agocomment
Joey Hess [Mon, 13 Jan 2025 17:32:46 +0000 (13:32 -0400)]
comment

14 months agoupdate
Joey Hess [Mon, 13 Jan 2025 17:26:36 +0000 (13:26 -0400)]
update

14 months agocomment
Joey Hess [Mon, 13 Jan 2025 17:14:54 +0000 (13:14 -0400)]
comment

14 months agodocument files
Joey Hess [Mon, 13 Jan 2025 17:14:12 +0000 (13:14 -0400)]
document files

14 months agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Mon, 13 Jan 2025 17:11:49 +0000 (13:11 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

14 months agotodo
Joey Hess [Mon, 13 Jan 2025 17:04:38 +0000 (13:04 -0400)]
todo

kind of a bug, but I'm not sure if it can be fixed

14 months agoupdate
Joey Hess [Sun, 12 Jan 2025 16:22:02 +0000 (12:22 -0400)]
update

14 months agoAdded a comment
yarikoptic [Fri, 10 Jan 2025 20:27:49 +0000 (20:27 +0000)]
Added a comment

14 months agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Fri, 10 Jan 2025 18:55:00 +0000 (14:55 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

14 months agoadded hooks corresponding to annex.*-command
Joey Hess [Fri, 10 Jan 2025 18:50:49 +0000 (14:50 -0400)]
added hooks corresponding to annex.*-command

* Added freezecontent-annex and thawcontent-annex hooks that
  correspond to the git configs annex.freezecontent and
  annex.thawcontent.
* Added secure-erase-annex hook that corresponds to the git config
  annex.secure-erase-command.
* Added commitmessage-annex hook that corresponds to the git config
  annex.commitmessage-command.
* Added http-headers-annex hook that corresponds to the git config
  annex.http-headers-command.
  that correspond to the post-update-annex and pre-commit-annex hooks.

The use case for these is eg, setting up a git repository that is run in a
container, where the easiest way to provide a script is by putting it in
.git/hooks/, rather than copying it into the container in a way that puts
it in PATH.

This is all the ones that make sense to add for annex.*-config git configs.
annex.youtube-dl-command is not a hook, it's telling git-annex what command
to run. So is annex.shared-sop-command. So omitted those.

May later also want to add hooks corresponding to
`remote.<name>.annex-cost-command` etc.

Sponsored-by: the NIH-funded NICEMAN (ReproNim TR&D3) project
14 months agoAdded a comment: on the init hook
yarikoptic [Fri, 10 Jan 2025 17:33:15 +0000 (17:33 +0000)]
Added a comment: on the init hook

14 months agoconfigs annex.post-update-command and annex.pre-commit-command
Joey Hess [Fri, 10 Jan 2025 17:27:51 +0000 (13:27 -0400)]
configs annex.post-update-command and annex.pre-commit-command

Added git configs annex.post-update-command and annex.pre-commit-command
that correspond to the git-annex hook scripts post-update-annex and
pre-commit-annex.

Note that the hook files take precience over the git config, since the git
config can includ global config which should be overridden by local config.

These new git configs are probably not super useful. Especially the
pre-commit-annex hook is there to install scripts to instead of the
pre-commit hook, since git-annex installs that hook itself. So why would
someone want to use a git config for that? Only reason I can think of would
be in a global git config. Or possibly because it's easier to set a git
config than write a hook script, on an OS like Windows.

The real reason I'm adding these is as groundwork for making other
annex.*-command git configs also be available as hook scripts. I want
to avoid having some things available as only git hooks and others as
both gitconfigs and git hooks. (It seems that some annex.*-command configs
don't translate to git hooks though.)

In the man page, moved documentation of the hooks to be next to the
documentation of the git configs. This is to avoid repitition.

14 months agoallocate this development to openneuro - we need to curate/process datasets from...
yarikoptic [Fri, 10 Jan 2025 17:27:23 +0000 (17:27 +0000)]
allocate this development to openneuro - we need to curate/process datasets from/for openneuro on discovery

14 months agocomment
Joey Hess [Fri, 10 Jan 2025 16:49:11 +0000 (12:49 -0400)]
comment

14 months agocomment
Joey Hess [Fri, 10 Jan 2025 16:08:28 +0000 (12:08 -0400)]
comment

14 months agomake git-remote-annex link available to test suite
Joey Hess [Fri, 10 Jan 2025 15:01:43 +0000 (11:01 -0400)]
make git-remote-annex link available to test suite

14 months agofixed
Joey Hess [Fri, 10 Jan 2025 14:56:35 +0000 (10:56 -0400)]
fixed

14 months agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Fri, 10 Jan 2025 14:37:50 +0000 (10:37 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

14 months agofix windows build
Joey Hess [Fri, 10 Jan 2025 14:37:39 +0000 (10:37 -0400)]
fix windows build

14 months agoAdded a comment
yarikoptic [Fri, 10 Jan 2025 03:20:32 +0000 (03:20 +0000)]
Added a comment

14 months agorepo is probably not technically offline, just out of reach
jkniiv [Thu, 9 Jan 2025 21:16:49 +0000 (21:16 +0000)]
repo is probably not technically offline, just out of reach

14 months agoAdded a comment: same problem on a VPS
jkniiv [Thu, 9 Jan 2025 21:14:06 +0000 (21:14 +0000)]
Added a comment: same problem on a VPS

14 months agocomment
Joey Hess [Thu, 9 Jan 2025 18:23:51 +0000 (14:23 -0400)]
comment

14 months agocomment
Joey Hess [Thu, 9 Jan 2025 16:07:23 +0000 (12:07 -0400)]
comment

14 months agoretitle
Joey Hess [Thu, 9 Jan 2025 15:48:42 +0000 (11:48 -0400)]
retitle

14 months agocomment
Joey Hess [Thu, 9 Jan 2025 15:46:53 +0000 (11:46 -0400)]
comment

14 months ago(no commit message)
parseaus [Thu, 9 Jan 2025 07:27:27 +0000 (07:27 +0000)]

14 months agolayout
Joey Hess [Wed, 8 Jan 2025 17:55:24 +0000 (13:55 -0400)]
layout

14 months agolayout
Joey Hess [Wed, 8 Jan 2025 17:55:00 +0000 (13:55 -0400)]
layout

14 months agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Wed, 8 Jan 2025 17:52:34 +0000 (13:52 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

14 months agoupdate
Joey Hess [Wed, 8 Jan 2025 17:52:22 +0000 (13:52 -0400)]
update

14 months agoAdded a comment: failing with `Operation not petmitted`
octvs@17a99a7aaeb0c0e0a2375e14807b138740ba34e9 [Wed, 8 Jan 2025 08:25:04 +0000 (08:25 +0000)]
Added a comment: failing with `Operation not petmitted`

14 months agoAdded a comment
Atemu [Tue, 7 Jan 2025 22:28:16 +0000 (22:28 +0000)]
Added a comment

14 months agoAdded a comment
yarikoptic [Tue, 7 Jan 2025 22:01:20 +0000 (22:01 +0000)]
Added a comment

14 months agoAdded a comment
yarikoptic [Tue, 7 Jan 2025 21:23:26 +0000 (21:23 +0000)]
Added a comment

14 months ago(no commit message)
Atemu [Tue, 7 Jan 2025 21:11:41 +0000 (21:11 +0000)]

14 months agoAdded a comment: odd system
yarikoptic [Tue, 7 Jan 2025 21:06:35 +0000 (21:06 +0000)]
Added a comment: odd system

14 months agocomment
Joey Hess [Tue, 7 Jan 2025 20:50:37 +0000 (16:50 -0400)]
comment

14 months agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Tue, 7 Jan 2025 20:37:48 +0000 (16:37 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

14 months agowindows permissions fix
Joey Hess [Tue, 7 Jan 2025 20:37:39 +0000 (16:37 -0400)]
windows permissions fix

Windows: Fix permission denied error when dropping files that have the
readonly attribute set.

Files coming from a special remote may have had write permission removed
from them. The directory special remote does that. And there are
probably others. So rather than fixing it on the special remote side,
made moveAnnex, on Windows, add back the write bit. This apparently
removes the readonly attribute. See Remote.Directory.removeDirGeneric
which already did the same on windows to allow removing files from the
directory special remote.

The reason that cleanObjectLoc also calls allowWrite is to handle
situations where files have already gotten into git-annex repositories on
Windows with the write bit set. Eg, an older git-annex put them there.
Or perhaps the git-annex repository was populated on some other OS.

14 months agoAdded a comment
yarikoptic [Tue, 7 Jan 2025 20:12:31 +0000 (20:12 +0000)]
Added a comment

14 months agoclose
Joey Hess [Tue, 7 Jan 2025 20:06:00 +0000 (16:06 -0400)]
close

14 months agogit-remote-annex enableremote to support readonly webdav
Joey Hess [Tue, 7 Jan 2025 19:57:20 +0000 (15:57 -0400)]
git-remote-annex enableremote to support readonly webdav

* Allow enableremote of an existing webdav special remote that has
  read-only access.
* git-remote-annex: Use enableremote rather than initremote.

14 months agosame bug
Joey Hess [Tue, 7 Jan 2025 19:53:47 +0000 (15:53 -0400)]
same bug

14 months agotag INM7
Joey Hess [Tue, 7 Jan 2025 19:52:20 +0000 (15:52 -0400)]
tag INM7

based on mih filing or commenting on things and/or on
git-remote-annex being used

14 months agoclose, behaving as documented
Joey Hess [Tue, 7 Jan 2025 18:47:56 +0000 (14:47 -0400)]
close, behaving as documented

14 months agocomment
Joey Hess [Tue, 7 Jan 2025 18:39:06 +0000 (14:39 -0400)]
comment

14 months agocomment
Joey Hess [Tue, 7 Jan 2025 18:28:24 +0000 (14:28 -0400)]
comment

14 months agocomment
Joey Hess [Tue, 7 Jan 2025 18:26:21 +0000 (14:26 -0400)]
comment

14 months agoFix installation on Android
Joey Hess [Tue, 7 Jan 2025 18:13:46 +0000 (14:13 -0400)]
Fix installation on Android

Unfortunately, commit ce95cac19501bfbffd610203083510888a6b9646 broke
android installation way back in May of last year.

14 months agoremove multiple dup comments
Joey Hess [Tue, 7 Jan 2025 18:08:32 +0000 (14:08 -0400)]
remove multiple dup comments

14 months agocomment
Joey Hess [Tue, 7 Jan 2025 18:05:03 +0000 (14:05 -0400)]
comment

14 months agocomment
Joey Hess [Tue, 7 Jan 2025 17:55:24 +0000 (13:55 -0400)]
comment

14 months agoclose, not a bug
Joey Hess [Tue, 7 Jan 2025 17:47:45 +0000 (13:47 -0400)]
close, not a bug

mrisse posted a comment earlier explaining the user's confusion to them

14 months agoretitle
Joey Hess [Tue, 7 Jan 2025 17:46:05 +0000 (13:46 -0400)]
retitle

14 months agocomment
Joey Hess [Tue, 7 Jan 2025 17:37:57 +0000 (13:37 -0400)]
comment

14 months agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Tue, 7 Jan 2025 17:21:49 +0000 (13:21 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

14 months agoremove empty comment
Joey Hess [Tue, 7 Jan 2025 17:21:41 +0000 (13:21 -0400)]
remove empty comment

14 months agoreponse
Joey Hess [Tue, 7 Jan 2025 17:21:17 +0000 (13:21 -0400)]
reponse

14 months agotodo from forum post
Joey Hess [Tue, 7 Jan 2025 17:00:32 +0000 (13:00 -0400)]
todo from forum post

14 months agoAdded a comment
yarikoptic [Tue, 7 Jan 2025 16:09:31 +0000 (16:09 +0000)]
Added a comment

14 months agoinitial idea on `git annex init` hooks
yarikoptic [Tue, 7 Jan 2025 14:55:52 +0000 (14:55 +0000)]
initial idea on `git annex init` hooks

14 months agoreport on the main repo being offline
jkniiv [Tue, 7 Jan 2025 06:56:08 +0000 (06:56 +0000)]
report on the main repo being offline

14 months agoremoved
jkniiv [Tue, 7 Jan 2025 06:15:59 +0000 (06:15 +0000)]
removed

14 months agoAdded a comment
Doable8234 [Tue, 7 Jan 2025 02:11:33 +0000 (02:11 +0000)]
Added a comment

14 months agoAdded a comment
yarikoptic [Tue, 7 Jan 2025 01:06:57 +0000 (01:06 +0000)]
Added a comment